package com.wang.service;

import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONObject;
import com.wang.common.util.PageInfoUtil;
import com.wang.pojo.ASensitiveWords;
import com.wang.pojo.AEmail;
import com.wang.pojo.AResult;

/**
 * 邮箱模块Service接口(带Db的只负责数据库表的crud)
 * 
 */
public interface IEmailDbService {
	/* ====email操作开始==== */
	/**
	 * 保存一条email
	 * 
	 * @param email
	 * @return
	 */
	JSONObject saveOneEmailService(AEmail email);

	/**
	 * 保存批量email
	 * 
	 * @param email
	 * @return
	 */
	JSONObject saveBatchEmailService(List<AEmail> emailList);

	/**
	 * 更新一条email
	 * 
	 * @param email
	 * @return
	 */
	JSONObject updateOneEmailService(AEmail email);

	/**
	 * 删除一条email
	 * 
	 * @param condMap
	 * @return
	 */
	JSONObject deleteOneEmailService(Map<String, Object> condMap);

	/**
	 * 查询一条email记录
	 * 
	 * @param condMap
	 * @return
	 */
	AEmail findOneEmailService(Map<String, Object> condMap);

	/**
	 * 查询多条email记录
	 * 
	 * @param condMap
	 * @return
	 */
	List<AEmail> findCondListEmailService(PageInfoUtil pageInfoUtil, Map<String, Object> condMap);
	/* ====email操作结束==== */

	/* ====AASensitiveWords敏感词操作开始==== */

	/**
	 * 保存一条敏感词 记录
	 * 
	 * @param asensitiveWords
	 * @return
	 */
	JSONObject saveOneSensitiveWordsService(ASensitiveWords asensitiveWords);

	/**
	 * 更新一条敏感词 记录
	 * 
	 * @param asensitiveWords
	 * @return
	 */
	JSONObject updateOneSensitiveWordsService(ASensitiveWords asensitiveWords);

	/**
	 * 删除一条敏感词 记录
	 * 
	 * @param condMap
	 * @return
	 */
	JSONObject deleteOneSensitiveWordsService(Map<String, Object> condMap);

	/**
	 * 查询一条敏感词记录
	 * 
	 * @param condMap
	 * @return
	 */
	ASensitiveWords findOneSensitiveWordsService(Map<String, Object> condMap);

	/**
	 * 查询多条敏感词记录
	 * 
	 * @param condMap
	 * @return
	 */
	List<ASensitiveWords> findCondListSensitiveWordsService(PageInfoUtil pageInfoUtil, Map<String, Object> condMap);
	/* ====AASensitiveWords敏感词操作结束==== */

	/* ====AResult操作开始==== */

	/**
	 * 保存一条结果 记录
	 * 
	 * @param asensitiveWords
	 * @return
	 */
	JSONObject saveOneResultService(AResult aresult);

	/**
	 * 更新一条结果 记录
	 * 
	 * @param asensitiveWords
	 * @return
	 */
	JSONObject updateOneResultService(AResult aresult);

	/**
	 * 删除一条结果 记录
	 * 
	 * @param condMap
	 * @return
	 */
	JSONObject deleteOneResultService(Map<String, Object> condMap);

	/**
	 * 查询一条结果记录
	 * 
	 * @param condMap
	 * @return
	 */
	AResult findOneResultService(Map<String, Object> condMap);

	/**
	 * 查询多条结果记录
	 * 
	 * @param condMap
	 * @return
	 */
	List<AResult> findCondListResultService(PageInfoUtil pageInfoUtil, Map<String, Object> condMap);
	/* ====AResult操作结束==== */
}
